$(function () {


    /*部门树列表*/
    $('#dept_tree_grid').treegrid({
        width:700,                       //宽度
        height:250,                      //长度
        rownumbers: true,                //设置为true，则显示带有行号的列
        animate:true,                    //是否开启动画
        collapsible:true,                //是否可以折叠
        fitColumns:true,                 //设置为true，则会自动扩大或缩小列的尺寸以适应网格的宽度并且防止水平滚动。
        url:'/dept/list',                //获取数据的地址
        method: 'get',                   //请求远程数据方法的类型
        idField:'id',                    //指示那个字段是标识字段
        treeField:'text',                //定义树节点的字段
        showFooter:true,
        fit:true,
        pagination:true,
        singleSelect:true,
        toolbar:"#dept_toolbar",
        columns:[[
            {field:'text',title:'名称',width:100,align:'center'},
            {field:'parentDept',title:'上级部门',width:100,align:'center'},
        ]],
        onLoadSuccess: function(){  $('#dept_tree_grid').treegrid("collapseAll");  }
    });

    /*对话框*/
    $("#dept_dialog").dialog({
        width:600,
        height:200,
        closed:true,
        buttons:[
            {
                text:'保存',
                handler:function(){

                    /*判断是新增还是编辑*/
                    var id = $("[name = 'id']").val();
                    var url;
                    if(id){
                        /*编辑*/
                        url = "/dept/update";
                    }else {
                        /*新增*/
                        url = "/dept/save";
                    }
                    /*提交表单*/
                    $('#deptForm').form("submit",{
                        url:url,
                        success:function(data){
                            data = $.parseJSON(data);
                            if(data.success){
                                $.messager.alert("温馨提示",data.msg);
                                /*关闭对话框*/
                                $("#dept_dialog").dialog("close");
                                /*重新加载数据*/
                                $("#dept_tree_grid").treegrid("reload");
                            }else {
                                $.messager.alert("温馨提示",data.msg);
                            }
                        }
                    })
                }
            },
            {
                text:'关闭',
                handler:function(){
                    $("#dept_dialog").dialog("close");
                }
            }
        ],
    });


    /*监听添加的点击事件*/
    $('#add').click(function () {
        /*清空数据*/
        $("#dept_dialog").dialog("setTitle","添加部门");
        $("#deptForm").form("clear");
        $("#dept_dialog").dialog("open");
        /*取消密码验证*/
    });

    /*监听编辑的点击事件*/
    $("#edit").click(function () {
        /*获取当前选中的行*/
        var rowData = $("#dept_tree_grid").treegrid("getSelected");

        if(!rowData){
            $.messager.alert("提示","选择一行数据进行编辑");
            return;
        }

        /*发送ajax来回显*/
        $.get("/dept/getDeptById?id="+rowData.id,function (data) {
            /*弹出对话框*/
            $('#dept_dialog').dialog("setTitle","编辑部门");
            $('#dept_dialog').dialog("open");
            /*选中数据的回显*/
            $("#deptForm").form("load",data);
        })


    });


    /*部门下拉框*/
    $('#pid').combotree({
        width:160,
        method:'get',
        url: '/dept/list',
        required: true,
        prompt:"请选择部门",
        panelHeight:"250",
        editable:false,
    });


    /*监听搜索按钮点击*/
    $("#searchbtn").click(function () {
        /*获取搜索的内容*/
        var keyword = $("[name='keyword']").val();
        /*重新加载列表并且把keyword传过去*/
        $("#dept_tree_grid").treegrid("load",{keyword:keyword});
    });

    /*监听刷新按钮点击*/
    $("#reload").click(function () {
        /*清空搜索的框的内容*/
        var keyword = $("[name='keyword']").val("");
        /*重新加载列表*/
        $("#dept_tree_grid").treegrid("load",{});
    });

    /*监听删除的点击*/
    $("#remove").click(function () {
        /*获取当前选中的行*/
        var rowData = $("#dept_tree_grid").treegrid("getSelected");

        if(!rowData){
            $.messager.alert("提示","选择一行数据进行编辑");
            return;
        }
        /*提醒用户，是否做删除部门的操作*/
        $.messager.confirm("确认","是否删除当前及以下的所有部门?",function (res) {
            if(res){
                /*离职操作*/
                $.post("/dept/delete?id="+rowData.id,function (data) {
                    if(data.success){
                        $.messager.alert("温馨提示",data.msg);
                        /*关闭对话框*/
                        /*重新加载数据*/
                        $("#dept_tree_grid").treegrid("reload");
                    }else {
                        $.messager.alert("温馨提示",data.msg);
                    }
                })
            }
        })
    });
});